<?php
require_once ('./Model/LoginHandler.php');
require_once ('./View/LoginView.php');
require_once ('./Model/DBSettings.php');
/*
 * Kontrollerar och loggar in och ut användare
 * Visar relevanta meddelanden
 * 
 * @retun string HTML
 */
class LoginController {
	
	public function DoControll(){
		$db = new mysqli(DBSettings::$host, DBSettings::$user, DBSettings::$password, DBSettings::$database);
		
		$loginHandler = new LoginHandler($db);
		$loginView = new LoginView();
		
		//Kontrollerar om användaren är inloggad eller inte
		if($loginHandler->IsLoggedIn() == true){
			//Kontrollerar om användaren valt att logga ut
			if($loginView->TriedToLogOut() == true){
				$loginHandler->DoLogout();
				$loginView->RemoveRemember();
				return $loginView->DoLoginBox("Du är utloggad", false);
			}
			else{
				return $loginView->DoLoginBox("Du är inloggad", true);			
			}
		}
		else{
			//Kontrollerar om användaren valt att logga in
			if($loginView->TriedToLogIn() == true){
				//Försöker logga in med angiven användarinformation
				if($loginHandler->DoLogin($loginView->GetUserName(), $loginView->GetPassword()) == true){
					//Om användaren val att bli ihågkommen kallas RememberMe från modellen	
					if($loginView->IsRemember() == true){
						$loginView->RememberMe($loginView->GetUserName());
					}	
					return $loginView->DoLoginBox("Du är inloggad", true);	
				}
				else{
					return $loginView->DoLoginBox("Fel användaruppgifter", false);
				}
			}
			else{
				return $loginView->DoLoginBox();				
			}
		}
		
		return $loginView->DoLoginBox();
	}
}
?>